package com.nijie.library.DAO.base;

import java.util.List;

import org.apache.ibatis.annotations.Param;

/**
 * ${DESCRIPTION}
 *
 * @author
 * @create 2017-12-03 20:55
 **/
public interface BaseDao<T> {
	/**
	 * 保存数据
	 * @param o
	 * @return
	 */
	Integer insert(T o);
	/**
	 * 删除数据
	 * @param o
	 * @return
	 */
	Integer delete(T o);
	/**
	 * 更新数据
	 * @param o
	 * @return
	 */
	Integer update(T o);
	/**
	 * 查询数据
	 * @return
	 */
	List<T> select(T o);
	/**
	 * 验证数据重复性
	 * @return
	 */
	Long selectExist(T o);
	/**
	 * 查询总数
	 * @param o
	 * @return
	 */
	long selectCount(T o);
	/**
	 * 批量修改状态
	 * @param ids
	 * @param status
	 * @return
	 */
	Integer updateStatus(@Param("ids")String ids,@Param("status")String status);
}
